package com.ruoyi.bulkegg.domain;

import java.math.BigDecimal;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 供应商关系对象 supply_relation_company
 * 
 * @author ruoyi
 * @date 2025-09-28
 */
public class SupplyRelationCompany extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 公司主键 */
    private Long companyId;

    /** 供货方（上游）公司名称 */
    @Excel(name = "供货方", readConverterExp = "上=游")
    private String supplierCompany;

    /** 贸易商（中游）公司名称 */
    @Excel(name = "贸易商", readConverterExp = "中=游")
    private String traderCompany;

    /** 采购方（下游）公司名称 */
    @Excel(name = "采购方", readConverterExp = "下=游")
    private String buyerCompany;

    /** 给贸易商的包装运输单价（元/件，负值表示扣点差价） */
    @Excel(name = "给贸易商的包装运输单价", readConverterExp = "元=/件，负值表示扣点差价")
    private BigDecimal upstreamDiff;

    /** 给采购方的包装运输单价（元/件，正值表示加价差价） */
    @Excel(name = "给采购方的包装运输单价", readConverterExp = "元=/件，正值表示加价差价")
    private BigDecimal downstreamDiff;

    /** 贸易商公司公章文件URL地址 */
    @Excel(name = "贸易商公司公章文件URL地址")
    private String traderCompanySealUrl;

    /** 状态（0正常 1停用） */
    @Excel(name = "状态", readConverterExp = "0=正常,1=停用")
    private String status;

    public void setCompanyId(Long companyId) 
    {
        this.companyId = companyId;
    }

    public Long getCompanyId() 
    {
        return companyId;
    }
    public void setSupplierCompany(String supplierCompany) 
    {
        this.supplierCompany = supplierCompany;
    }

    public String getSupplierCompany() 
    {
        return supplierCompany;
    }
    public void setTraderCompany(String traderCompany) 
    {
        this.traderCompany = traderCompany;
    }

    public String getTraderCompany() 
    {
        return traderCompany;
    }
    public void setBuyerCompany(String buyerCompany) 
    {
        this.buyerCompany = buyerCompany;
    }

    public String getBuyerCompany() 
    {
        return buyerCompany;
    }
    public void setUpstreamDiff(BigDecimal upstreamDiff) 
    {
        this.upstreamDiff = upstreamDiff;
    }

    public BigDecimal getUpstreamDiff() 
    {
        return upstreamDiff;
    }
    public void setDownstreamDiff(BigDecimal downstreamDiff) 
    {
        this.downstreamDiff = downstreamDiff;
    }

    public BigDecimal getDownstreamDiff() 
    {
        return downstreamDiff;
    }
    public void setTraderCompanySealUrl(String traderCompanySealUrl) 
    {
        this.traderCompanySealUrl = traderCompanySealUrl;
    }

    public String getTraderCompanySealUrl() 
    {
        return traderCompanySealUrl;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("companyId", getCompanyId())
            .append("supplierCompany", getSupplierCompany())
            .append("traderCompany", getTraderCompany())
            .append("buyerCompany", getBuyerCompany())
            .append("upstreamDiff", getUpstreamDiff())
            .append("downstreamDiff", getDownstreamDiff())
            .append("traderCompanySealUrl", getTraderCompanySealUrl())
            .append("status", getStatus())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
